#include<bits/stdc++.h>

using namespace std;
using ll = long long;
#define endl '\n'

const int maxn = 10;
int n = 10;
int nums[maxn];

void dfs(int k) {
    if (accumulate(nums, nums + k, 0) > n)
        return;

    if (accumulate(nums, nums + k, 0) == n) {
        copy(nums, nums + k, ostream_iterator<int>(cout, "+"));
        cout << endl;


        return;
    }
    for (int i = 1; i < n; i++) {
        if (k > 0 && i < nums[k - 1])continue;
        nums[k] = i;
        dfs(k + 1);
    }


}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    dfs(0);

    return 0;
}
